
package net.mappoint.s.mappoint_30;

import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlType;


/**
 * <p>Java class for MapOptions complex type.
 * 
 * <p>The following schema fragment specifies the expected content contained within this class.
 * 
 * <pre>
 * &lt;complexType name="MapOptions">
 *   &lt;complexContent>
 *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
 *       &lt;sequence>
 *         &lt;element name="RouteHighlightColor" type="{http://s.mappoint.net/mappoint-30/}RouteHighlightColor"/>
 *         &lt;element name="ConstructionDelayHighlightColor" type="{http://s.mappoint.net/mappoint-30/}RouteHighlightColor"/>
 *         &lt;element name="ConstructionClosureHighlightColor" type="{http://s.mappoint.net/mappoint-30/}RouteHighlightColor"/>
 *         &lt;element name="FontSize" type="{http://s.mappoint.net/mappoint-30/}MapFontSize" minOccurs="0"/>
 *         &lt;element name="Format" type="{http://s.mappoint.net/mappoint-30/}ImageFormat" minOccurs="0"/>
 *         &lt;element name="IsOverviewMap" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
 *         &lt;element name="ReturnType" type="{http://s.mappoint.net/mappoint-30/}MapReturnType" minOccurs="0"/>
 *         &lt;element name="PanHorizontal" type="{http://www.w3.org/2001/XMLSchema}double"/>
 *         &lt;element name="PanVertical" type="{http://www.w3.org/2001/XMLSchema}double"/>
 *         &lt;element name="Style" type="{http://s.mappoint.net/mappoint-30/}MapStyle"/>
 *         &lt;element name="Zoom" type="{http://www.w3.org/2001/XMLSchema}double" minOccurs="0"/>
 *         &lt;element name="PreventIconCollisions" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
 *       &lt;/sequence>
 *     &lt;/restriction>
 *   &lt;/complexContent>
 * &lt;/complexType>
 * </pre>
 * 
 * 
 */
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "MapOptions", propOrder = {
    "routeHighlightColor",
    "constructionDelayHighlightColor",
    "constructionClosureHighlightColor",
    "fontSize",
    "format",
    "isOverviewMap",
    "returnType",
    "panHorizontal",
    "panVertical",
    "style",
    "zoom",
    "preventIconCollisions"
})
public class MapOptions {

    @XmlElement(name = "RouteHighlightColor", required = true)
    protected RouteHighlightColor routeHighlightColor;
    @XmlElement(name = "ConstructionDelayHighlightColor", required = true)
    protected RouteHighlightColor constructionDelayHighlightColor;
    @XmlElement(name = "ConstructionClosureHighlightColor", required = true)
    protected RouteHighlightColor constructionClosureHighlightColor;
    @XmlElement(name = "FontSize", defaultValue = "Smaller")
    protected MapFontSize fontSize;
    @XmlElement(name = "Format")
    protected ImageFormat format;
    @XmlElement(name = "IsOverviewMap", defaultValue = "false")
    protected Boolean isOverviewMap;
    @XmlElement(name = "ReturnType", defaultValue = "ReturnImage")
    protected MapReturnType returnType;
    @XmlElement(name = "PanHorizontal")
    protected double panHorizontal;
    @XmlElement(name = "PanVertical")
    protected double panVertical;
    @XmlElement(name = "Style", required = true)
    protected MapStyle style;
    @XmlElement(name = "Zoom", defaultValue = "1")
    protected Double zoom;
    @XmlElement(name = "PreventIconCollisions", defaultValue = "false")
    protected Boolean preventIconCollisions;

    /**
     * Gets the value of the routeHighlightColor property.
     * 
     * @return
     *     possible object is
     *     {@link RouteHighlightColor }
     *     
     */
    public RouteHighlightColor getRouteHighlightColor() {
        return routeHighlightColor;
    }

    /**
     * Sets the value of the routeHighlightColor property.
     * 
     * @param value
     *     allowed object is
     *     {@link RouteHighlightColor }
     *     
     */
    public void setRouteHighlightColor(RouteHighlightColor value) {
        this.routeHighlightColor = value;
    }

    /**
     * Gets the value of the constructionDelayHighlightColor property.
     * 
     * @return
     *     possible object is
     *     {@link RouteHighlightColor }
     *     
     */
    public RouteHighlightColor getConstructionDelayHighlightColor() {
        return constructionDelayHighlightColor;
    }

    /**
     * Sets the value of the constructionDelayHighlightColor property.
     * 
     * @param value
     *     allowed object is
     *     {@link RouteHighlightColor }
     *     
     */
    public void setConstructionDelayHighlightColor(RouteHighlightColor value) {
        this.constructionDelayHighlightColor = value;
    }

    /**
     * Gets the value of the constructionClosureHighlightColor property.
     * 
     * @return
     *     possible object is
     *     {@link RouteHighlightColor }
     *     
     */
    public RouteHighlightColor getConstructionClosureHighlightColor() {
        return constructionClosureHighlightColor;
    }

    /**
     * Sets the value of the constructionClosureHighlightColor property.
     * 
     * @param value
     *     allowed object is
     *     {@link RouteHighlightColor }
     *     
     */
    public void setConstructionClosureHighlightColor(RouteHighlightColor value) {
        this.constructionClosureHighlightColor = value;
    }

    /**
     * Gets the value of the fontSize property.
     * 
     * @return
     *     possible object is
     *     {@link MapFontSize }
     *     
     */
    public MapFontSize getFontSize() {
        return fontSize;
    }

    /**
     * Sets the value of the fontSize property.
     * 
     * @param value
     *     allowed object is
     *     {@link MapFontSize }
     *     
     */
    public void setFontSize(MapFontSize value) {
        this.fontSize = value;
    }

    /**
     * Gets the value of the format property.
     * 
     * @return
     *     possible object is
     *     {@link ImageFormat }
     *     
     */
    public ImageFormat getFormat() {
        return format;
    }

    /**
     * Sets the value of the format property.
     * 
     * @param value
     *     allowed object is
     *     {@link ImageFormat }
     *     
     */
    public void setFormat(ImageFormat value) {
        this.format = value;
    }

    /**
     * Gets the value of the isOverviewMap property.
     * 
     * @return
     *     possible object is
     *     {@link Boolean }
     *     
     */
    public Boolean isIsOverviewMap() {
        return isOverviewMap;
    }

    /**
     * Sets the value of the isOverviewMap property.
     * 
     * @param value
     *     allowed object is
     *     {@link Boolean }
     *     
     */
    public void setIsOverviewMap(Boolean value) {
        this.isOverviewMap = value;
    }

    /**
     * Gets the value of the returnType property.
     * 
     * @return
     *     possible object is
     *     {@link MapReturnType }
     *     
     */
    public MapReturnType getReturnType() {
        return returnType;
    }

    /**
     * Sets the value of the returnType property.
     * 
     * @param value
     *     allowed object is
     *     {@link MapReturnType }
     *     
     */
    public void setReturnType(MapReturnType value) {
        this.returnType = value;
    }

    /**
     * Gets the value of the panHorizontal property.
     * 
     */
    public double getPanHorizontal() {
        return panHorizontal;
    }

    /**
     * Sets the value of the panHorizontal property.
     * 
     */
    public void setPanHorizontal(double value) {
        this.panHorizontal = value;
    }

    /**
     * Gets the value of the panVertical property.
     * 
     */
    public double getPanVertical() {
        return panVertical;
    }

    /**
     * Sets the value of the panVertical property.
     * 
     */
    public void setPanVertical(double value) {
        this.panVertical = value;
    }

    /**
     * Gets the value of the style property.
     * 
     * @return
     *     possible object is
     *     {@link MapStyle }
     *     
     */
    public MapStyle getStyle() {
        return style;
    }

    /**
     * Sets the value of the style property.
     * 
     * @param value
     *     allowed object is
     *     {@link MapStyle }
     *     
     */
    public void setStyle(MapStyle value) {
        this.style = value;
    }

    /**
     * Gets the value of the zoom property.
     * 
     * @return
     *     possible object is
     *     {@link Double }
     *     
     */
    public Double getZoom() {
        return zoom;
    }

    /**
     * Sets the value of the zoom property.
     * 
     * @param value
     *     allowed object is
     *     {@link Double }
     *     
     */
    public void setZoom(Double value) {
        this.zoom = value;
    }

    /**
     * Gets the value of the preventIconCollisions property.
     * 
     * @return
     *     possible object is
     *     {@link Boolean }
     *     
     */
    public Boolean isPreventIconCollisions() {
        return preventIconCollisions;
    }

    /**
     * Sets the value of the preventIconCollisions property.
     * 
     * @param value
     *     allowed object is
     *     {@link Boolean }
     *     
     */
    public void setPreventIconCollisions(Boolean value) {
        this.preventIconCollisions = value;
    }

}
